import {defineStore} from "pinia";
import {reactive} from "vue";
import {UserStore} from "@/store/modules/types/type.ts";
// 因为要计算异步路由，所以就要吧路由存储在store中，供任何组件使用
import {constantRoute} from "@/router/routes.ts"

export const useUserStore = defineStore('user', () => {
        // 定义管理用户的state
        const userInfo:UserStore = reactive({
            token: localStorage.getItem('token'),
            menuRoutes:constantRoute // 仓库存储菜单需要的路由数组
        })
        // // 定义获取接口函数的action函数
        // // 用户登录
        // // @ts-ignore
        // const userLogin = async (data: loginForm) => {
        //     let res:any = await reqLogin(data)
        //     console.log(res)
        //     if (res.code == 200) {
        //         // console.log(res,'userLogin')
        //         userInfo.token =( res.data as string)
        //         SET_TOKEN((res.data as string))
        //         return 'ok'
        //     } else {
        //         return Promise.reject(new Error(res.data))
        //     }
        //
        // }

        // 以对象的格式把state和action函数return
        return {
            userInfo,
            // userLogin
        }
    },
    // //创建 Store 时，将 persist 选项设置为 true。
    // {
    //     // @ts-ignore
    //     persist: true,
    // }
)
